<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // 使用Object.defineProperty()添加访问器和控制器

  // const obj = {
  //   name:"admin"
  // }

  // const obj2 = {};

  // Object.defineProperty(obj2, "name", {
  //   get:function(){
  //     console.log("有人访问了obj2.name")
  //     return obj.name
  //   },
  //   set:function(val){
  //     console.log("有人修改了obj2.name的值，为" + val);
  //     obj.name = val;
  //   }
  // })

  // console.log(obj2);


  // Object.defineProperty的其他配置
  const obj = Object.defineProperty({}, "msg", {
    value: "hello",   // 默认值
    writable: false,  // 是否可写
    enumerable: false // 是否可枚举
  })

  const obj2 = {msg:"world"}

  obj.msg = "hahahahh";
  console.log(obj)
  console.log(obj.msg)
  // 枚举
  for(let i in obj){
    console.log(i, obj[i]);
  }

  obj2.msg = "heiheieheihei";
  console.log(obj2)
  console.log(obj2.msg)
  for(let i in obj2){
    console.log(i, obj2[i]);
  }







  
</script>
</html>